The internet provides a convenient way to disseminate information to a large amount of people. One popular usage of disseminating information via the internet is through listings of employment opportunities provided on job listing web pages. For example, companies will frequently have one or more job listings pages on their websites that list open positions, qualifications for specific positions, job and skills descriptions, location, etc. This information can be provided to, or collected by, job listing aggregators that provide listings of jobs to users in a comprehensive listing. Continuing the example, the job listing aggregator could show similar jobs (e.g., software engineering positions) from different companies in the same listing, sort the listing based on user supplied criteria, provide employee reviews of employers along with the listings, etc.
Job aggregators interact with many different entities when collecting and listing jobs. Because these different entities may have innumerable ways of referring to similar jobs, the collection, categorization, and analysis of the collected job listings becomes problematic. For example, a first job listing could refer to a Software Engineer, a second job listing could refer to a Sr. Developer in Java, and a third job listing could refer to a Software Ninja in Web Interfaces. Although these job listings may be for very similar jobs, their titles do not provide a convenient way of indexing the jobs listings, searching based on job title, gathering statistics for the listings based on job title, etc.